.text

	in	r1,#0x4444
	inb	rh3,#0x123

	in	r8,@r0
	in	r9,@r1
	in	r10,@r2
	in	r11,@r3
	in	r12,@r4
	in	r13,@r5
	in	r14,@r6
	in	r15,@r7
	in	r0,@r8
	in	r1,@r9
	in	r2,@r10
	in	r3,@r11
	in	r4,@r12
	in	r5,@r13
	in	r6,@r14
	in	r7,@r15

	inb	rh0,@r0
	inb	rh1,@r1
	inb	rh2,@r2
	inb	rh3,@r3
	inb	rh4,@r4
	inb	rh5,@r5
	inb	rh6,@r6
	inb	rh7,@r7
	inb	rl0,@r8
	inb	rl1,@r9
	inb	rl2,@r10
	inb	rl3,@r11
	inb	rl4,@r12
	inb	rl5,@r13
	inb	rl6,@r14
	inb	rl7,@r15

	ind	@r3,@r15,r8
	ind	@r1,@r14,r7
	ind	@r2,@r13,r6
	ind	@r3,@r12,r5
	ind	@r4,@r11,r0
	ind	@r5,@r10,r4
	ind	@r6,@r9,r3
	ind	@r7,@r8,r2
	ind	@r8,@r7,r1
	ind	@r9,@r6,r15
	ind	@r10,@r5,r14
	ind	@r11,@r4,r13
	ind	@r12,@r3,r11
	ind	@r13,@r2,r12
	ind	@r14,@r1,r10
	ind	@r15,@r0,r9

	indb	@r3,@r15,r8
	indb	@r1,@r14,r7
	indb	@r2,@r13,r6
	indb	@r3,@r12,r5
	indb	@r4,@r11,r0
	indb	@r5,@r10,r4
	indb	@r6,@r9,r3
	indb	@r7,@r8,r2
	indb	@r8,@r7,r1
	indb	@r9,@r6,r15
	indb	@r10,@r5,r14
	indb	@r11,@r4,r13
	indb	@r12,@r3,r11
	indb	@r13,@r2,r12
	indb	@r14,@r1,r10
	indb	@r15,@r0,r9

	indr	@r3,@r15,r8
	indr	@r1,@r14,r7
	indr	@r2,@r13,r6
	indr	@r3,@r12,r5
	indr	@r4,@r11,r0
	indr	@r5,@r10,r4
	indr	@r6,@r9,r3
	indr	@r7,@r8,r2
	indr	@r8,@r7,r1
	indr	@r9,@r6,r15
	indr	@r10,@r5,r14
	indr	@r11,@r4,r13
	indr	@r12,@r3,r11
	indr	@r13,@r2,r12
	indr	@r14,@r1,r10
	indr	@r15,@r0,r9

	indrb	@r3,@r15,r8
	indrb	@r1,@r14,r7
	indrb	@r2,@r13,r6
	indrb	@r3,@r12,r5
	indrb	@r4,@r11,r0
	indrb	@r5,@r10,r4
	indrb	@r6,@r9,r3
	indrb	@r7,@r8,r2
	indrb	@r8,@r7,r1
	indrb	@r9,@r6,r15
	indrb	@r10,@r5,r14
	indrb	@r11,@r4,r13
	indrb	@r12,@r3,r11
	indrb	@r13,@r2,r12
	indrb	@r14,@r1,r10
	indrb	@r15,@r0,r9

	ini	@r3,@r15,r8
	ini	@r1,@r14,r7
	ini	@r2,@r13,r6
	ini	@r3,@r12,r5
	ini	@r4,@r11,r0
	ini	@r5,@r10,r4
	ini	@r6,@r9,r3
	ini	@r7,@r8,r2
	ini	@r8,@r7,r1
	ini	@r9,@r6,r15
	ini	@r10,@r5,r14
	ini	@r11,@r4,r13
	ini	@r12,@r3,r11
	ini	@r13,@r2,r12
	ini	@r14,@r1,r10
	ini	@r15,@r0,r9

	inib	@r3,@r15,r8
	inib	@r1,@r14,r7
	inib	@r2,@r13,r6
	inib	@r3,@r12,r5
	inib	@r4,@r11,r0
	inib	@r5,@r10,r4
	inib	@r6,@r9,r3
	inib	@r7,@r8,r2
	inib	@r8,@r7,r1
	inib	@r9,@r6,r15
	inib	@r10,@r5,r14
	inib	@r11,@r4,r13
	inib	@r12,@r3,r11
	inib	@r13,@r2,r12
	inib	@r14,@r1,r10
	inib	@r15,@r0,r9

	inir	@r3,@r15,r8
	inir	@r1,@r14,r7
	inir	@r2,@r13,r6
	inir	@r3,@r12,r5
	inir	@r4,@r11,r0
	inir	@r5,@r10,r4
	inir	@r6,@r9,r3
	inir	@r7,@r8,r2
	inir	@r8,@r7,r1
	inir	@r9,@r6,r15
	inir	@r10,@r5,r14
	inir	@r11,@r4,r13
	inir	@r12,@r3,r11
	inir	@r13,@r2,r12
	inir	@r14,@r1,r10
	inir	@r15,@r0,r9

	inirb	@r3,@r15,r8
	inirb	@r1,@r14,r7
	inirb	@r2,@r13,r6
	inirb	@r3,@r12,r5
	inirb	@r4,@r11,r0
	inirb	@r5,@r10,r4
	inirb	@r6,@r9,r3
	inirb	@r7,@r8,r2
	inirb	@r8,@r7,r1
	inirb	@r9,@r6,r15
	inirb	@r10,@r5,r14
	inirb	@r11,@r4,r13
	inirb	@r12,@r3,r11
	inirb	@r13,@r2,r12
	inirb	@r14,@r1,r10
	inirb	@r15,@r0,r9


	out	#0x1234,r3
	outb	#0x123,rl2

	out	@r0,r8
	out	@r1,r9
	out	@r2,r10
	out	@r3,r11
	out	@r4,r12
	out	@r5,r13
	out	@r6,r14
	out	@r7,r15
	out	@r8,r0
	out	@r9,r1
	out	@r10,r2
	out	@r11,r3
	out	@r12,r4
	out	@r13,r5
	out	@r14,r6
	out	@r15,r7

	outb	@r0,rh0
	outb	@r1,rh1
	outb	@r2,rh2
	outb	@r3,rh3
	outb	@r4,rh4
	outb	@r5,rh5
	outb	@r6,rh6
	outb	@r7,rh7
	outb	@r8,rl0
	outb	@r9,rl1
	outb	@r10,rl2
	outb	@r11,rl3
	outb	@r12,rl4
	outb	@r13,rl5
	outb	@r14,rl6
	outb	@r15,rl7

	outd	@r0,@r15,r8
	outd	@r1,@r14,r7
	outd	@r2,@r13,r6
	outd	@r3,@r12,r5
	outd	@r4,@r11,r0
	outd	@r5,@r10,r4
	outd	@r6,@r9,r3
	outd	@r7,@r8,r2
	outd	@r8,@r7,r1
	outd	@r9,@r6,r15
	outd	@r10,@r5,r14
	outd	@r11,@r4,r13
	outd	@r12,@r3,r11
	outd	@r13,@r2,r12
	outd	@r14,@r1,r10
	outd	@r15,@r3,r9

	outdb	@r0,@r15,r8
	outdb	@r1,@r14,r7
	outdb	@r2,@r13,r6
	outdb	@r3,@r12,r5
	outdb	@r4,@r11,r0
	outdb	@r5,@r10,r4
	outdb	@r6,@r9,r3
	outdb	@r7,@r8,r2
	outdb	@r8,@r7,r1
	outdb	@r9,@r6,r15
	outdb	@r10,@r5,r14
	outdb	@r11,@r4,r13
	outdb	@r12,@r3,r11
	outdb	@r13,@r2,r12
	outdb	@r14,@r1,r10
	outdb	@r15,@r3,r9

	otdr	@r0,@r15,r8
	otdr	@r1,@r14,r7
	otdr	@r2,@r13,r6
	otdr	@r3,@r12,r5
	otdr	@r4,@r11,r0
	otdr	@r5,@r10,r4
	otdr	@r6,@r9,r3
	otdr	@r7,@r8,r2
	otdr	@r8,@r7,r1
	otdr	@r9,@r6,r15
	otdr	@r10,@r5,r14
	otdr	@r11,@r4,r13
	otdr	@r12,@r3,r11
	otdr	@r13,@r2,r12
	otdr	@r14,@r1,r10
	otdr	@r15,@r3,r9

	otdrb	@r0,@r15,r8
	otdrb	@r1,@r14,r7
	otdrb	@r2,@r13,r6
	otdrb	@r3,@r12,r5
	otdrb	@r4,@r11,r0
	otdrb	@r5,@r10,r4
	otdrb	@r6,@r9,r3
	otdrb	@r7,@r8,r2
	otdrb	@r8,@r7,r1
	otdrb	@r9,@r6,r15
	otdrb	@r10,@r5,r14
	otdrb	@r11,@r4,r13
	otdrb	@r12,@r3,r11
	otdrb	@r13,@r2,r12
	otdrb	@r14,@r1,r10
	otdrb	@r15,@r3,r9

	outi	@r0,@r15,r8
	outi	@r1,@r14,r7
	outi	@r2,@r13,r6
	outi	@r3,@r12,r5
	outi	@r4,@r11,r0
	outi	@r5,@r10,r4
	outi	@r6,@r9,r3
	outi	@r7,@r8,r2
	outi	@r8,@r7,r1
	outi	@r9,@r6,r15
	outi	@r10,@r5,r14
	outi	@r11,@r4,r13
	outi	@r12,@r3,r11
	outi	@r13,@r2,r12
	outi	@r14,@r1,r10
	outi	@r15,@r3,r9

	outib	@r0,@r15,r8
	outib	@r1,@r14,r7
	outib	@r2,@r13,r6
	outib	@r3,@r12,r5
	outib	@r4,@r11,r0
	outib	@r5,@r10,r4
	outib	@r6,@r9,r3
	outib	@r7,@r8,r2
	outib	@r8,@r7,r1
	outib	@r9,@r6,r15
	outib	@r10,@r5,r14
	outib	@r11,@r4,r13
	outib	@r12,@r3,r11
	outib	@r13,@r2,r12
	outib	@r14,@r1,r10
	outib	@r15,@r3,r9

	otir	@r0,@r15,r8
	otir	@r1,@r14,r7
	otir	@r2,@r13,r6
	otir	@r3,@r12,r5
	otir	@r4,@r11,r0
	otir	@r5,@r10,r4
	otir	@r6,@r9,r3
	otir	@r7,@r8,r2
	otir	@r8,@r7,r1
	otir	@r9,@r6,r15
	otir	@r10,@r5,r14
	otir	@r11,@r4,r13
	otir	@r12,@r3,r11
	otir	@r13,@r2,r12
	otir	@r14,@r1,r10
	otir	@r15,@r3,r9

	otirb	@r0,@r15,r8
	otirb	@r1,@r14,r7
	otirb	@r2,@r13,r6
	otirb	@r3,@r12,r5
	otirb	@r4,@r11,r0
	otirb	@r5,@r10,r4
	otirb	@r6,@r9,r3
	otirb	@r7,@r8,r2
	otirb	@r8,@r7,r1
	otirb	@r9,@r6,r15
	otirb	@r10,@r5,r14
	otirb	@r11,@r4,r13
	otirb	@r12,@r3,r11
	otirb	@r13,@r2,r12
	otirb	@r14,@r1,r10
	otirb	@r15,@r3,r9


	sin	r0,#124
	sinb	rh0,#1266

	sind	@r3,@r15,r8
	sind	@r1,@r14,r7
	sind	@r2,@r13,r6
	sind	@r3,@r12,r5
	sind	@r4,@r11,r0
	sind	@r5,@r10,r4
	sind	@r6,@r9,r3
	sind	@r7,@r8,r2
	sind	@r8,@r7,r1
	sind	@r9,@r6,r15
	sind	@r10,@r5,r14
	sind	@r11,@r4,r13
	sind	@r12,@r3,r11
	sind	@r13,@r2,r12
	sind	@r14,@r1,r10
	sind	@r15,@r0,r9

	sindb	@r3,@r15,r8
	sindb	@r1,@r14,r7
	sindb	@r2,@r13,r6
	sindb	@r3,@r12,r5
	sindb	@r4,@r11,r0
	sindb	@r5,@r10,r4
	sindb	@r6,@r9,r3
	sindb	@r7,@r8,r2
	sindb	@r8,@r7,r1
	sindb	@r9,@r6,r15
	sindb	@r10,@r5,r14
	sindb	@r11,@r4,r13
	sindb	@r12,@r3,r11
	sindb	@r13,@r2,r12
	sindb	@r14,@r1,r10
	sindb	@r15,@r0,r9

	sindr	@r3,@r15,r8
	sindr	@r1,@r14,r7
	sindr	@r2,@r13,r6
	sindr	@r3,@r12,r5
	sindr	@r4,@r11,r0
	sindr	@r5,@r10,r4
	sindr	@r6,@r9,r3
	sindr	@r7,@r8,r2
	sindr	@r8,@r7,r1
	sindr	@r9,@r6,r15
	sindr	@r10,@r5,r14
	sindr	@r11,@r4,r13
	sindr	@r12,@r3,r11
	sindr	@r13,@r2,r12
	sindr	@r14,@r1,r10
	sindr	@r15,@r0,r9

	sindrb	@r3,@r15,r8
	sindrb	@r1,@r14,r7
	sindrb	@r2,@r13,r6
	sindrb	@r3,@r12,r5
	sindrb	@r4,@r11,r0
	sindrb	@r5,@r10,r4
	sindrb	@r6,@r9,r3
	sindrb	@r7,@r8,r2
	sindrb	@r8,@r7,r1
	sindrb	@r9,@r6,r15
	sindrb	@r10,@r5,r14
	sindrb	@r11,@r4,r13
	sindrb	@r12,@r3,r11
	sindrb	@r13,@r2,r12
	sindrb	@r14,@r1,r10
	sindrb	@r15,@r0,r9

	sini	@r3,@r15,r8
	sini	@r1,@r14,r7
	sini	@r2,@r13,r6
	sini	@r3,@r12,r5
	sini	@r4,@r11,r0
	sini	@r5,@r10,r4
	sini	@r6,@r9,r3
	sini	@r7,@r8,r2
	sini	@r8,@r7,r1
	sini	@r9,@r6,r15
	sini	@r10,@r5,r14
	sini	@r11,@r4,r13
	sini	@r12,@r3,r11
	sini	@r13,@r2,r12
	sini	@r14,@r1,r10
	sini	@r15,@r0,r9

	sinib	@r3,@r15,r8
	sinib	@r1,@r14,r7
	sinib	@r2,@r13,r6
	sinib	@r3,@r12,r5
	sinib	@r4,@r11,r0
	sinib	@r5,@r10,r4
	sinib	@r6,@r9,r3
	sinib	@r7,@r8,r2
	sinib	@r8,@r7,r1
	sinib	@r9,@r6,r15
	sinib	@r10,@r5,r14
	sinib	@r11,@r4,r13
	sinib	@r12,@r3,r11
	sinib	@r13,@r2,r12
	sinib	@r14,@r1,r10
	sinib	@r15,@r0,r9

	sinir	@r3,@r15,r8
	sinir	@r1,@r14,r7
	sinir	@r2,@r13,r6
	sinir	@r3,@r12,r5
	sinir	@r4,@r11,r0
	sinir	@r5,@r10,r4
	sinir	@r6,@r9,r3
	sinir	@r7,@r8,r2
	sinir	@r8,@r7,r1
	sinir	@r9,@r6,r15
	sinir	@r10,@r5,r14
	sinir	@r11,@r4,r13
	sinir	@r12,@r3,r11
	sinir	@r13,@r2,r12
	sinir	@r14,@r1,r10
	sinir	@r15,@r0,r9

	sinirb	@r3,@r15,r8
	sinirb	@r1,@r14,r7
	sinirb	@r2,@r13,r6
	sinirb	@r3,@r12,r5
	sinirb	@r4,@r11,r0
	sinirb	@r5,@r10,r4
	sinirb	@r6,@r9,r3
	sinirb	@r7,@r8,r2
	sinirb	@r8,@r7,r1
	sinirb	@r9,@r6,r15
	sinirb	@r10,@r5,r14
	sinirb	@r11,@r4,r13
	sinirb	@r12,@r3,r11
	sinirb	@r13,@r2,r12
	sinirb	@r14,@r1,r10
	sinirb	@r15,@r0,r9


	sout	#0xbeee,r0
	soutb	#0xbabe,rh4

	soutd	@r0,@r15,r8
	soutd	@r1,@r14,r7
	soutd	@r2,@r13,r6
	soutd	@r3,@r12,r5
	soutd	@r4,@r11,r0
	soutd	@r5,@r10,r4
	soutd	@r6,@r9,r3
	soutd	@r7,@r8,r2
	soutd	@r8,@r7,r1
	soutd	@r9,@r6,r15
	soutd	@r10,@r5,r14
	soutd	@r11,@r4,r13
	soutd	@r12,@r3,r11
	soutd	@r13,@r2,r12
	soutd	@r14,@r1,r10
	soutd	@r15,@r3,r9

	soutdb	@r0,@r15,r8
	soutdb	@r1,@r14,r7
	soutdb	@r2,@r13,r6
	soutdb	@r3,@r12,r5
	soutdb	@r4,@r11,r0
	soutdb	@r5,@r10,r4
	soutdb	@r6,@r9,r3
	soutdb	@r7,@r8,r2
	soutdb	@r8,@r7,r1
	soutdb	@r9,@r6,r15
	soutdb	@r10,@r5,r14
	soutdb	@r11,@r4,r13
	soutdb	@r12,@r3,r11
	soutdb	@r13,@r2,r12
	soutdb	@r14,@r1,r10
	soutdb	@r15,@r3,r9

	sotdr	@r0,@r15,r8
	sotdr	@r1,@r14,r7
	sotdr	@r2,@r13,r6
	sotdr	@r3,@r12,r5
	sotdr	@r4,@r11,r0
	sotdr	@r5,@r10,r4
	sotdr	@r6,@r9,r3
	sotdr	@r7,@r8,r2
	sotdr	@r8,@r7,r1
	sotdr	@r9,@r6,r15
	sotdr	@r10,@r5,r14
	sotdr	@r11,@r4,r13
	sotdr	@r12,@r3,r11
	sotdr	@r13,@r2,r12
	sotdr	@r14,@r1,r10
	sotdr	@r15,@r3,r9

	sotdrb	@r0,@r15,r8
	sotdrb	@r1,@r14,r7
	sotdrb	@r2,@r13,r6
	sotdrb	@r3,@r12,r5
	sotdrb	@r4,@r11,r0
	sotdrb	@r5,@r10,r4
	sotdrb	@r6,@r9,r3
	sotdrb	@r7,@r8,r2
	sotdrb	@r8,@r7,r1
	sotdrb	@r9,@r6,r15
	sotdrb	@r10,@r5,r14
	sotdrb	@r11,@r4,r13
	sotdrb	@r12,@r3,r11
	sotdrb	@r13,@r2,r12
	sotdrb	@r14,@r1,r10
	sotdrb	@r15,@r3,r9

	souti	@r0,@r15,r8
	souti	@r1,@r14,r7
	souti	@r2,@r13,r6
	souti	@r3,@r12,r5
	souti	@r4,@r11,r0
	souti	@r5,@r10,r4
	souti	@r6,@r9,r3
	souti	@r7,@r8,r2
	souti	@r8,@r7,r1
	souti	@r9,@r6,r15
	souti	@r10,@r5,r14
	souti	@r11,@r4,r13
	souti	@r12,@r3,r11
	souti	@r13,@r2,r12
	souti	@r14,@r1,r10
	souti	@r15,@r3,r9

	soutib	@r0,@r15,r8
	soutib	@r1,@r14,r7
	soutib	@r2,@r13,r6
	soutib	@r3,@r12,r5
	soutib	@r4,@r11,r0
	soutib	@r5,@r10,r4
	soutib	@r6,@r9,r3
	soutib	@r7,@r8,r2
	soutib	@r8,@r7,r1
	soutib	@r9,@r6,r15
	soutib	@r10,@r5,r14
	soutib	@r11,@r4,r13
	soutib	@r12,@r3,r11
	soutib	@r13,@r2,r12
	soutib	@r14,@r1,r10
	soutib	@r15,@r3,r9

	sotir	@r0,@r15,r8
	sotir	@r1,@r14,r7
	sotir	@r2,@r13,r6
	sotir	@r3,@r12,r5
	sotir	@r4,@r11,r0
	sotir	@r5,@r10,r4
	sotir	@r6,@r9,r3
	sotir	@r7,@r8,r2
	sotir	@r8,@r7,r1
	sotir	@r9,@r6,r15
	sotir	@r10,@r5,r14
	sotir	@r11,@r4,r13
	sotir	@r12,@r3,r11
	sotir	@r13,@r2,r12
	sotir	@r14,@r1,r10
	sotir	@r15,@r3,r9

	sotirb	@r0,@r15,r8
	sotirb	@r1,@r14,r7
	sotirb	@r2,@r13,r6
	sotirb	@r3,@r12,r5
	sotirb	@r4,@r11,r0
	sotirb	@r5,@r10,r4
	sotirb	@r6,@r9,r3
	sotirb	@r7,@r8,r2
	sotirb	@r8,@r7,r1
	sotirb	@r9,@r6,r15
	sotirb	@r10,@r5,r14
	sotirb	@r11,@r4,r13
	sotirb	@r12,@r3,r11
	sotirb	@r13,@r2,r12
	sotirb	@r14,@r1,r10
	sotirb	@r15,@r3,r9


